Apparatus and method for providing, retrieving, and using data guide information supplied in a digital vestigial sideband signal

ABSTRACT

A device for provisioning, retrieving, and using data guide information transmitted in a digital broadcast signal is disclosed. A receiver receives the digital broadcast signal which includes digital television programming packets multiplexed with data packets and thereafter routes the received signal to a demodulator. The demodulator provides a demodulated signal to a detector which identifies data packets contained therein. A processor then determines the types of data in the data packets, as well as the respective channels on which the identified types of data are transmitted. The processor prepares a menu for a display screen enabling a user to select the channel of interest, and enables the user to be connected accordingly.

Notice: More than one reissue application has been filed for the reissueof U.S. Pat. No. 6,598,226. The reissue applications are the presentapplication, which is a continuation of reissue application Ser. No.11/526,292, which is a continuation of reissue application Ser. No.11/187,031, which is reissue of U.S. Pat. No. 6,598,226.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a continuation of reissue application Ser.No. 11/526,292, filed Sep. 22, 2006—now issued as U.S. Pat. No. Re.42,838 on Oct. 11, 2011, which is a continuation of application Ser. No.11/187,031, filed Jul. 21, 2005—now issued as U.S. Pat. No. Re. 42,764on Sep. 27, 2011, which is a reissue application for U.S. Pat. No.6,598,226, which issued on Jul. 22, 2003.

The present application is related to reissue application Ser. No.12/705,071, filed Feb. 12, 2010, which is a continuation of reissueapplication Ser. No. 11/187,031—now issued as U.S. Pat. No. Re. 42,764on Sep. 27, 2001, which is a reissue application for U.S. Pat. No.6,598,226, which issued on Jul. 22, 2003.

The present application is related to reissue application Ser. No.12/705,017, filed Feb. 12, 2010, which is a continuation of reissueapplication Ser. No. 11/187,031, filed Jul. 21, 2005—now issued as U.S.Pat. No. Re. 42,764 on Sep. 27, 2001, which is a reissue application forU.S. Pat. No. 6,598,226, which issued on Jul. 22, 2003.

TECHNICAL FIELD OF THE INVENTION

The present invention relates to an apparatus that enables a user toreceive and utilize data which is broadcast via a digital vestigialsideband (VSB) broadcast signal.

BACKGROUND OF THE INVENTION AND PRIOR ART

The ATSC digital broadcast standard for digital television allows forthe transmission of 19 Mbits/sec in an RF channel having a 6 MHZbandwidth. Although this allocated bandwidth is adequate for a singleanalog NTSC television channel, the ATSC bit rate permits the samechannel to support the concurrent transmission of several standarddefinition television (SDTV) programs (i.e., programs displayable with aresolution comparable to that of the NTSC analog program).Alternatively, the allocated bandwidth at the ATSC bit rate permits achannel to support the transmission of a single high definitiontelevision (HDTV) program at a time. Moreover, the ATSC digitalbroadcast standard permits data to be transmitted in the channel alongwith the digital program being transmitted. Therefore, data packets maybe multiplexed in the channel with video and audio packets of one ormore of the programs.

While channel guides in the form of a table displayed on a dedicatedchannel and providing channels, titles, and show times, currently existfor analog television programming, none exist which provide a similarguide or key for digital television as to the type of data transmittedon various channels. Moreover, no channel or data guides exists whichenable various entries in the guide to be selected by a user for accessto further information.

The present invention contemplates using the data transmission featureof the ATSC standard in order to transmit data guide information in thedata packets. The data guide may include identifying information as tothe channels under which data is transmitted with the digital VSBbroadcast signals, as well as the type of data provided on each channel.The invention further contemplates displaying the transmitted data guidein a format enabling a user to select and access the data on any of thedisplayed channels.

SUMMARY OF THE INVENTION

In accordance with one aspect of the present invention, a deviceidentifies types of data transmitted on multiple channels of a digitalbroadcast signal, displays the identified types of data transmitted oneach channel, and enables a user to access the data transmitted on aparticular channel. The device comprises a scanning receiver, ademodulator, a detector, a memory, a processor, and an operatorinterface module. The scanning receiver is adapted to tune to thedigital broadcast signal on selected channels, and the digital broadcastsignal includes at least one digital television programming packet andat least one data packet. The demodulator is coupled to the receiver andis adapted to demodulate the digital broadcast signal. The detector iscoupled to the demodulator and is adapted to detect the at least onedata packet. The memory is coupled to the detector, and the memory isadapted to store data guide software code for identifying the type ofdata contained in the at least one data packet and the channel on whichthe identified type of data is available. The data guide software isfurther adapted to enable the data on any channel selected by anoperator to be accessed. The processor is coupled to the memory and isadapted to execute the data guide software code. The operator interfacemodule is coupled to the processor, and is adapted to display theidentified types of data and the channels on which the identified typesof data are available. The operator interface module is further adaptedto enable any displayed channel to be selected.

According to another aspect of the present invention, a method ofproviding a data guide summarizing types of data transmitted in adigital broadcast signal and the channels corresponding to the types ofdata is provided. The method includes the steps of receiving a digitalbroadcast signal containing digital programming packets and datapackets, demodulating the digital broadcast signal, detecting the datapackets, storing the data guide based on information contained in thedata packets, and displaying the data guide.

According to another aspect of the present invention, a data castingsystem is provided which comprises a receiver, a detector coupled to thereceiver, and a operator interface module coupled to the detector. Thereceiver is adapted to receive a digital broadcast signal containing atleast one digital television programming packet and at least one datapacket. The detector is adapted to detect the at least one data packetand is further adapted to detect types of data transmitted within the atleast one data packet and channels on which the detected types of dataare available. The screen is adapted to display the detected types ofdata and the channels on which the detected types of data are available.

According to a further aspect of the present invention, a computerreadable storage medium of a digital program receiver having a dataguide stored thereon is provided, wherein the data guide contains a listof the types of data receivable by the digital program receiver and thecorresponding RF channels in which the data is present.

BRIEF DESCRIPTION OF THE DRAWINGS

The features and advantages of the present invention will become moreapparent from a detailed consideration of the invention taken inconjunction with the drawings in which:

FIG. 1 illustrates a data guide system according to one embodiment ofthe present invention;

FIG. 2 illustrates a sample portion of a digital vestigial sideband(VSB) signal having a set of digital programming packets multiplexedwith a set of data packets;

FIG. 3 illustrates data packets and digital television programmingpackets having an identification header;

FIG. 4 illustrates a sample data guide display screen according to thepresent invention; and

FIG. 5 illustrates a flow chart of a method for retrieving a digital VSBbroadcast signal, extracting at least one data packet from the digitalVSB broadcast signal, determining the type of data received, andgenerating a data guide according to the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENT

Referring now to the drawings, wherein like reference numerals designateidentical or corresponding parts throughout the several figures, andmore particularly to FIG. 1, a data guide system according to thepresent invention is generally depicted by reference numeral 10. Thedata guide system 10 includes a digital vestigial sideband (VSB)broadcast signal transmitter 11 (such as a digital television provider),and a datacasting receiver 12.

The datacasting receiver 12 includes a digital scanning receiver 13, ademodulator 14, a detector 16, a processor 18, a memory 20, and anoperator interface module 21. The digital scanning receiver 13 is atunable receiver which is able to scan through and be tuned to the RFchannels within the bands allocated to the digital scanning receiver 13,including, for example, any of the RF channels in any of the bandsallocated for digital television viewing. In operation, the digitalscanning receiver 13 receives a digital VSB broadcast signal which isdefined to include any of a 2 digital VSB, a 4 digital VSB, an 8 digitalVSB, an 8T digital VSB or a 16 digital VSB signal, transmitted via oneof the RF channels. As will be discussed in further detail herein, thedigital scanning receiver 13 may be an existing receiver of a devicesuch as a digital television or personal computer, or may be a separatereceiver dedicated to the data guide system 10.

Referring to FIG. 2, a sample portion of a digital VSB broadcast signal22 to which the digital scanning receiver 13 may be tuned is depicted.As shown therein, the digital VSB broadcast signal 22 includes a set ofdigital television (DTV) programming packets 24 having audio and videocomponents multiplexed with a set of data packets 26. The DTVprogramming packets 24 and data packets 26 are both formatted inconformance with the ATSC standard and thus have symbols and symbolrates as specified therein.

The digital scanning receiver 13 scans through all available channels,and at each channel tunes to the corresponding digital VSB broadcastsignal 22. The demodulator 14 demodulates the digital VSB broadcastsignal 22 from the digital scanning receiver 13.

In accordance with the ATSC standard and as shown in FIG. 3, each of thedata packets 26 and each of the digital television programming packets24 are identifiable via a pre-defined sequence of identification bits[not shown in detail] residing at a location allocated as a header 30.

Preferably, the detector 16 is implemented with a software applicationthat is stored in the memory 20. The software application preferably hassearch engine capabilities, such that in order to enable identificationof the DTV programming packets 24 and the data packets 26, the softwareapplication compares the header 30 of each DTV programming packet 24 andeach incoming data packet 26 to pre-defined bit sequences used toidentify the relevant packets. The detector 16 then passes theidentified DTV programming packets 24 to appropriate video and/or audioprocessors (not shown). When the detector 16 recognizes that a relevantdata packet 26 is received on the particular channel to which thedigital scanning receiving 13 is currently tuned, the detector 16transmits an appropriate signal to the processor 18.

The signal from the detector 16 to the processor 18 indicates to theprocessor 18 that the received data and channel on which it has beenreceived should be stored in the memory 20, and that the processor 18must interpret the data packet 26 to determine the particular type ofdata received. This interpretation may be accomplished similar to themanner in which the presence of the data packet 26 is determined. Morespecifically, the header 30 or the data portions of a data packet mayinclude a predetermined bit stream which the processor 18 may compare toa database of bit streams stored in memory 20. For example, the bitstreams may indicate that the data following the header comprises: priceupdate information for a grocery shopping service program, addresses ofrelevant websites related to the digital television programming packet24, business news, sports statistics, government tax forms, etc. Ifwebsite addresses are included, they may allow an HTML link program,such as a web browser, to seek out a website that is associated with theDTV programming packet 24.

Alternatively, once the processor 18 receives the signal from thedetector indicating that a data packet 26 has been received, theprocessor 18 may utilize a template stored in the memory 20 whichautomatically indicates the type of data received based on the channelto which the receiver 13 is tuned at the time of reception. In otherwords, it may be known that a particular channel always and onlytransmits business data, while another channel always and only transmitssports statistics. As a result, once the detector 16 determines thatdata is received, the processor 18 can reference the template todetermine which type of data corresponds to the tuned channel.

Upon identifying the specific type of data received, the data packets 26are checked for errors. The processor 18 uses an error checking programto examine the data packets 26 for errors, such as those typicallycaused by discontinuities from storms or multi-path interferences. If anerror is detected, data is erased and the system tunes to the nextchannel to retrieve data. The data from the current channel can beretrieved the next time it is transmitted.

If no error is detected, the processor 18 determines if the data typecorresponding to the data transmitted in the current channel is new orupdated since the last time that data type was received on thatparticular channel. Such checking can be performed through acomparison-of the received data packets 26 to the previous data typestored in the memory 20. If the received data type of the data containedin the current channel is not new, it is erased. If this data type isnew, the data type is stored in the memory 20, replacing the previouslystored data type.

Also, if the data type is determined to be new, the processor 18executes data guide software to generate or update a menu 32 containingthat data type. The operator interface module 21 can display the menu 32at any time the user selects. The operator interface module 21 can be inthe form of, for example, a computer monitor, a television screen, aliquid crystal display screen of a cellular telephone or personaldigital assistant, or the like. The menu 32 could be displayed on adesignated channel to which the user could tune when desired. Using aperipheral input device (not shown) associated with the operatorinterface module 21, such as a mouse, trackball, keyboard, remotecontrol, or touch screen, a user can scroll through the displayed menu32 and select the channel of interest. Once a particular channel isselected the processor 18 then directly connects the user to the desiredchannel, or if a website is selected, to the desired website. Arepresentative menu 32 generated by the processor 18 is depicted in FIG.4.

Referring now to FIG. 5, the method by which the data guide system 10may function is depicted. As shown, the method begins at a block 60where the digital scanning receiver 13 tunes to a channel containing thedigital VSB broadcast signal 22. Once the signal 22 is tuned, controlproceeds to a block 62 where the received VSB broadcast signal 22 isprovided to the demodulator 14. The demodulator 14 demodulates the VSBbroadcast signal 22. The digital television programming packets 24 andthe data packets 26 are then transferred to the detector 16 at a block64.

At a block 66, the detector 16 identifies the data packets 26. As willbe understood by one having ordinary skill in the art, the data packets26 may be transmitted by the digital television transmitter 11 atselected times during the day and may be transmitted repeatedly atconvenient intervals. If the digital receiver 12 contains a single tunerin the form of the digital scanning receiver 13, the data monitoringstep 66 may be performed during non-prime time hours so as not interferewith heavier prime time usage of the digital broadcast. Alternatively,the datacasting receiver 12 could include one tuner for normal usage andreception of the digital television broadcast, and a separate scanningtuner dedicated to scanning through all channels in search of data beingreceived. Accordingly, the tuning step 60 and monitoring step 66 neednot be limited to any particular period of usage.

As described earlier, the monitoring process preferably involveslaunching a search engine application that causes the detector 16 tosearch for a predefined sequence of identification bits located in theheader 30 of each DTV programming packet 24 and each data packet 26wherein the predefined sequence of bits indicate a data packet 26.

If it is determined that a data packet 26 has been detected, the dataand the channel on which this data packet 26 was received are stored inthe memory 20 as indicated by a block 68, and the detector 16 generatesa signal which causes control to pass to a block 70 where the processor18 determines the type of data detected. As indicated above this can beperformed in numerous ways including performing a comparison of bitstreams to a database of known bit streams, or using a template todetermine the type of data always transmitted on the channel to whichthe receiver 13 is tuned.

Once the type of data is determined, the processor 18 performs an errorchecking routine, as indicated at a block 72, to determine whether anyof the received data has been tainted by, for example, discontinuitiescaused by storms or multi-path interference. If an error is detected,the retrieved data is erased as indicated by a block 74 and controlreturns to the block 60 to enable the next channel to be checked. Asdescribed hereinbefore, since the data is transmitted periodically,error-free data packets 26 can be retrieved from a later transmission.In alternative embodiments, the error checking step can be performed ata different time, including before the storing step 68.

If no error is detected at the block 72, control proceeds to a block 76where the processor 18 determines if the data type is new or updatedsince the last time the monitoring step 66 was performed. The processor18 compares the data type determined at the block 70 to the data typecontained in the menu 32 stored in the memory 20 corresponding to thetuned channel. If the data type is determined not to be new, the datatype is erased at the block 74 and control returns to the block 60wherein the next channel is checked.

If the data type is determined to be new, control passes to a block 78wherein the received data type replaces the old data contained in themenu 32 stored in the memory 20. The channel to which the receiver 13 istuned at that time is also determined and stored in the memory 20. Thechannel on which the current data is received may be utilized as anaddress into the memory 20 corresponding to the relevant line in themenu 32.

At any time selected by the user, the processor 18 causes the menu 32 tobe displayed by the operator interface module 21, such as on a channeldedicated to providing a data guide. When tuned to the dedicated dataguide channel, the user can scroll through the menu 32 and select anyone of the displayed channels. The processor 18 responds to the receiveduser input by connecting to the selected channel, or if web links areincluded in the selected channel, to the selected website assuming thatthe datacasting receiver 12 is web enabled.

In an alternative embodiment, data guide information as contained in themenu 32 could be transmitted on a single channel. As a result, the stepof scanning all channels need not be performed, but rather the singlechannel on which the data is transmitted could be periodically checkedand the memory 20 and menu 32 could be updated when new data isreceived.

Although it is suggested that the detector 16 be implemented using asoftware application having search engine capabilities, it may insteadbe implemented using hardware or firmware. For example, the detector 16may be implemented using an ASIC device configured to behave like a gatearray such that the device, when presented with the proper pre-definedata sequence, allows the data to pass therethrough.

Certain modifications of the present invention have been discussedabove. Other modifications will occur to those practicing in the art ofthe present invention. For example, the present invention has beendescribed above at least in part in relation to providing a data guidebased upon data transmitted in a digital vestigial sideband (VSB)broadcast signal. However, it should be noted that the present inventionalso is applicable to providing a data guide based upon data transmittedin other types of digital broadcast signals such as COFDM signals, QAMsignals, QPSK signals, and/or the like.

Accordingly, the description of the present invention is to be construedas illustrative only and is for the purpose of teaching those skilled inthe art the best mode of carrying out the invention. The details may bevaried substantially without departing from the spirit of the invention,and the exclusive use of all modifications which are within the scope ofthe appended claims is reserved.

1. A device for identifying types of data transmitted on multiplechannels of a digital broadcast signal, displaying the identified typesof data transmitted on each channel, and enabling a user to access thedata transmitted on a particular channel, the device comprising: ascanning receiver adapted to tune to the digital broadcast signal onselected channels, the digital broadcast signal including at least onedigital television programming packet and at least one data packet; ademodulator coupled to the receiver and adapted to demodulate thedigital broadcast signal; a detector coupled to the demodulator andadapted to detect the at least one data packet; a memory coupled to thedetector, the memory being adapted to store data guide software code foridentifying the type of data contained in the at least one data packetand the channel on which the identified type of data is available, thedata guide software further being adapted to enable the data on anychannel selected by an operator to be accessed; a processor coupled tothe memory and adapted to execute the data guide software code; and, anoperator interface module coupled to the processor, the operatorinterface module being adapted to display the identified types of dataand the channels on which the identified types of data are available,the operator interface module further being adapted to enable anydisplayed channel to be selected.
 2. The device of claim 1 wherein theprocessor comprises a central processing unit of a personal computer,and the operator interface module comprises a video monitor and an inputdevice.
 3. The device of claim 1 wherein the operator interface modulecomprises a display of a personal digital assistant.
 4. The device ofclaim 1 wherein the operator interface module comprises a display of atelephone.
 5. The device of claim 4 wherein the telephone comprises acellular telephone.
 6. The device of claim 1 wherein the processorcomprises a processing unit of a television, and the operator interfacemodule comprises a display screen of the television.
 7. The device ofclaim 1 wherein the at least one data packet includes at least one linkto a website, the operator interface module enables the at least onewebsite to be selected, and wherein the processor enables the at leastone website to be accessed.
 8. The device of claim 1 wherein the dataguide software code generates a data guide in menu format for display onthe operator interface module.
 9. The device of claim 8 wherein theoperator interface module enables the operator to scroll through themenu before selecting a particular channel.
 10. A method of providing adata guide summarizing types of data transmitted in a digital broadcastsignal and the channels corresponding to the types of data comprisingthe steps of: receiving the digital broadcast signal containing digitalprogramming packets and data packets; demodulating the digital broadcastsignal; detecting the data packets; storing the data guide based oninformation contained in the data packets; and, displaying the dataguide.
 11. The method of claim 10 wherein the digital broadcast signalis transmitted in multiple channels, and wherein the receiving step isperformed by scanning through the multiple channels.
 12. The method ofclaim 10 further including the step of selecting one of the identifiedchannels and gaining access to data transmitted on the selected channel.13. The method of 10 performed by a central processing unit of apersonal computer, wherein the displaying step is performed using avideo monitor connected to the personal computer.
 14. The method ofclaim 10 performed by a processor of a television, wherein thedisplaying step is performed using a video screen of the television. 15.The method of claim 10 wherein the displaying of the data guidecomprises displaying the data guide on a display of a personal digitalassistant.
 16. The method of claim 10 wherein the displaying of the dataguide comprises displaying the data guide on a display of a telephone.17. The method of claim 16 wherein the telephone comprises a cellulartelephone.
 18. A data casting system comprising: a receiver adapted toreceive a digital broadcast signal containing at least one digitaltelevision programming packet and at least one data packet; a detectorcoupled to the receiver and adapted to detect the at least one datapacket, the detector further adapted to detect types of data transmittedwithin the at least one data packet and channels on which the detectedtypes of data are available; and, an operator interface module coupledto the detector and adapted to display the detected types of data andthe channels on which the detected types of data are available.
 19. Thedata casting system of claim 18 further including a processor coupled tothe detector, the processor being adapted to execute data guidesoftware, the data guide software generating a menu based on the typesof data and channels detected by the detector, the menu being displayedon the operator interface module.
 20. The data casting system of claim19 wherein the operator interface module allows any of the displayedchannels to be selected, and the data guide software and processorconnect the operator interface module to the selected channel.
 21. Thedata casting system of claim 20 wherein the at least one channelincludes at least one link to a website.
 22. A computer readable storagemedium of a digital program receiver having a data guide stored thereon,wherein the data guide contains a list of the types of data receivableby the digital program receiver and the corresponding RF channels inwhich the data is present.
 23. The computer readable storage medium ofclaim 22 wherein the data guide is a menu.
 24. The computer readablestorage medium of claim 23 wherein the menu contains selectable items.25. A method for controlling an error while processing data providingfull information on a data broadcast in a digital receiver wherein thedigital receiver identifies an application associated with a service andfinds a location from which to retrieve the application, the methodcomprising: receiving the data providing full information on the databroadcast, wherein the data comprising a header and a body is repeatedlytransmitted from a transmitter, and further the header comprisesinformation which is used to identify application types; monitoring thedata for the application types that the digital receiver can decode;detecting an error located in a portion of the data providing fullinformation on the data broadcast; and discarding the portion having thedetected error.
 26. The method of claim 25, wherein the data istransmitted repeatedly at specific intervals from the transmitter. 27.The method of claim 26, wherein the method further comprises a step ofprocessing a next portion if there is the next portion.
 28. The methodof claim 25, wherein the method further comprises a step of processingthe data having a new version.
 29. The method of claim 28, wherein thestep of processing replaces data having an old version in a memory withthe data having the new version.
 30. The method of claim 25, wherein thedigital receiver corresponds to either a digital television, a personalcomputer or a separate receiver.
 31. The method of claim 25, wherein themethod further comprises a step of displaying an additional EPG that isindependent of general broadcast programs.